package com.aizuda.boot.modules.third.openApi.dto;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Positive;
import java.math.BigDecimal;

/**
 * 汇率转换请求DTO
 *
 * @author yangshen
 * @date 2025-07-25
 */
@Data
@Schema(description = "汇率转换请求参数")
public class ExchangeRateRequest {

    @NotBlank(message = "源货币代码不能为空")
    @Schema(description = "源货币代码，如：USD、CNY、EUR等", example = "USD", required = true)
    private String fromCode;

    @NotBlank(message = "目标货币代码不能为空")
    @Schema(description = "目标货币代码，如：USD、CNY、EUR等", example = "CNY", required = true)
    private String toCode;

    @NotNull(message = "转换金额不能为空")
    @Positive(message = "转换金额必须大于0")
    @Schema(description = "转换金额", example = "100.00", required = true)
    private BigDecimal money;
}
